Documentation to Yukon Rel. F 8/15/1996 by Dirk Haun Europastr. 8 D-64569 Nauheim dirk_haun@wi2.maus.de Contents ======== 1 Introduction 1.1 Compatibility 2 How to play Yukon 2.1 Goal of the Game 2.2 Game Variations 2.3 The Play Area 2.4 The Game Rules 2.5 The Point System (Casino Style) 2.6 High Scores and Best Times 3 Usage 3.1 The Popup Menu and the Menu list 3.2 Keyboard 4 The YUKONDAT folder 4.1 The Cards 4.2 The Sounds 4.3 The Resource Appendix ======== A The YTool Program B CrazySounds C Tips and Hints and other notes D Thanks to ... E Copying F Fairware 1 Introduction *************** Caution, play this game at your own peril! This game can consume large amounts of time that could be better spent on something more productive. Eventually after every failed round, you will want to throw your mouse into the corner. But then say "Oh well, ONE more game..." Don't tell me, I have warned you. 1.1 Compatibility ================== Yukon runs on all Ataris with all TOS versions (and therefore all compatible systems). The resolution must be at least 640 x 400 to use card set that comes in the archive. If you want to run it in a lower resolution you need to create a smaller card set. If you run Yukon in a resolution with less than four colors, it will run in monochrome. 2 How to play Yukon ******************** 2.1 Goal of the Game ===================== The goal of the game is this, you must take the stacks of shuffled cards and sort and stack them by suit and in value order (Ace, 2, 3, ..., Queen, King). 2.2 Game Variations ==================== Yukon has three game variations. In order these are Classic: Only kings can be placed on an empty field. Medium: Any card can be placed on an empty field. Light: Same as Classic, except that when you have gone through the deck you can click on the empty frame at the bottom and go through the deck again. Nothing comes without a price though this costs you $5. These supposedly insignificant differences make for three versions of one strategy. But these three differences also make varying levels of difficulty. 2.3 The Play Area ================== On the play area there are 13 stacks, on these when you begin, you will find some, a lot or no cards. The first card on the seven stacks on the right will be up, and all the cards on the stack on the far left will be over. You want to put the cards onto the four suit stacks, that you see vertically between the stack on the far left and the stacks on the right. The last stack on the left of course is the remainder of the deck of cards. 2.4 The Game Rules =================== The face up cards on the seven stacks on the right can be moved and stacked on each other. Click and hold the left mouse button on the card(s) you want to move, then move the mouse cursor to the new location for the cards and let go of the button. You must always alternate the colors, a red (Heart, Diamond) on a black (Club, Spade) card as you lay them. You can lay more cards on the stack switching colors and decending in numbers as you go all the way down to Ace if you want. If you want to place a card (on one of the four suit stacks on the left), all you need to do it give it one quick click. You can also place the card on the correct stack yourself. But once you place a card on one of the suit stacks it is out of the game, it can not be moved again. If you move the last face up card off of a stack, then the next face down card on that stack (if there is one) will be turned face up. If there are no move cards on a stack then you will have an empty stack, and depending upon your game variant (more on this later), you will be able to move another card(s) here (i.e. a solitary card or a stack with a king on the bottom) or any card you want. Different is the variation "Classic", in which only a king may be moved onto empty stacks. When you have no more moves with the starting cards, you can bring a new card into the game, by clicking on the stack on the far left. The topmost card will be turned over and placed on top of the stack on the far left top. If you can't use this card, you can repeat the process. A stack may form here, and you will always be able to move the top card on this stack, if of course you have some place to put it. The end of the game is recognized automatically by Yukon. If you can't finish the game, Yukon will then display an alert "No more moves". But if you uncover all the cards so that the game can be finished, then Yukon will automatically move all the cards to the appropriate of the four suit stacks on the left. So long as Yukon doesn't show any reaction then you still have moves you can make. (these moves may only be cosmetic in appearance though). Please think: That the automatic clearing of the table avoids the annoying and tedious moving of all the cards at the end of the game. If at the end of the game you do not notice this action, then there are some cards that you must move, or the routine will not work (one could equally write a routine, so that Yukon could play alone ...). An example of a situation where the automatic clearing of the table doesn't start: When you have in the game variation "Classic" in the right side of the play area all of the cards face up and you only have three kings on this side and now on the left side the last card on the stack (deck) is uncovered, so the clearing of the table will not begin. Reason: The four kings must be located face up and must be on the bottom of a stack on the right side of the play area. When you have done this, then the automatic clearing of the table should start. (unless, you find the rest of the cards on the left hand stacks, you might have to move some cards off of the deck stack before the clearing will begin). 2.5 The Point System (Casino Style) ==================================== You start the race in this game with empty pockets and go from there to 52 dollars into debt (one dollar for every card). For every card that you get on the four suit stacks on the left, it will give you five dollars back. Theoretically you can even make a profit ... When you begin a new round, you must buy a new deck of cards. This will cost you 52 dollars. To undo a move costs three dollars and to go through the deck again (in the variation "Light") costs five dollars. 2.6 High Scores and Best Times =============================== A high score or best time is always only written when you win a game. When you have won a game and have a high score, you will be given the choice to either save the high score or to continue playing with your current points. Unless of course if you are playing the timed game where each game is a new one. If you save your score in the point game, then after the save, your points will be set back to zero (and thus -52). Only 5 high scores and best times are kept for each variation, so each time you get a new high score an old one will be destroyed. 3 Usage ******** 3.1 The Popup Menu and the Menu list ===================================== With one click of the right mouse button (in an empty area in the window) you can display the popup menu. Then you can select any of the following items: About Yukon Gives a short description of Yukon. Game Variation Here you can switch between the three game variations. You will then see an alert with three buttons "Classic", "Medium" and "Light". The current variation is the `default' button and is also in the title bar of the window. If you have already moved some cards or played a game in a different variation, the game will completely restart and your points will be set back to -52 dollars. If you click on the current game variant again, Yukon will continue without changing anything. Timed Game When you select this item, you turn the timed game on (or off). The time will be shown on the left (where the points are normally displayed). The time will begin at 0:00 and continue to count up until you have either finished or lost the game. There are no points in the timed game. High Scores or Best Times With this you will see the five top scores or best times for the current game variation. Undo Move With the Undo key or this menu selection you can go back one (1) move. This will cost you three (3) dollars. New Start With this you restart the game completely. Any points you have will be set back to zero (and from there to -52). Quit This is how you quit the game. The menu bar has the following additional items: New Game With this menu selection you start a new round. Load Cards Here you can load another set of cards. 3.2 Keyboard ============= The most important functions can also be accessed from the keyboard. In the following list `^' represents the Control key. You of course need to press this with the other key to access the function. [Help] Displays a small help file. [Undo] Undo a move. [Space] Uncover a new card off the pile. ^Space Pause (window will be minimized, halts a timed game) ^N Start a new game ^R Restart (new game with your points set back) ^Q Quit program ^V Change game variation ^Z Timed game on or off ^H Show high scores or best times ^L Load a new deck of cards You can change these shortcuts (apart from the Help and Space shortcuts) by changing the YUKON.RSC file. 4 The YUKONDAT folder ********************** In the folder named YUKONDAT Yukon is looking for the following files: The YUKONDAT folder has to be in the same directory as YUKON.PRG. If you want to place it somewhere else you can define an environment variable $YUKONDAT pointing to that directory. 4.1 The Cards ============== In the folder YUKONDAT, you will find several sets of cards for several resolutions. Yukon will look in the files in this folder with the file mask *.IMG, it will then choose the best cards for the actual resolution. That will happen by the motto "biggest possible, the most colors possible". If Yukon doesn't find appropriate cards for the actual resolution, it will refuse to run with an appropriate message. If you want to install your own set of cards for Yukon, there is nothing standing in your way. You must make a file including the 15 cards in four suits, also including a background for the play field and seven backsides (which will be cycled through during play) that is one large (X)IMG. Please notice that the card data must be a graphics file in IMG- or XIMG-format with a maximum of eight bit planes. I have created a tool to do this all for you, it is called YTool, it will combine all the seperate image files into one file (you will have one image for each of the cards, the background and back sides). 4.2 The Sounds =============== In certain game situations you can be alerted with background sound. Yukon can play these sounds when you have one of the following: ù a computer which has DMA sound hardware (STe or Mega STe, TT, Falcon) ù the program "MacSound" (comes with MagiCMac) ù the program "Petra" The sounds must be in HSN-format (created by the program CrazySounds), they must be in the YUKONDAT folder and must have the following names: START.HSN played when you start Yukon (only once) INTRO.HSN played when you start or restart a game SCHADE.HSN played when your game doesn't go well JUBEL1.HSN played when you win a game, but your score or time doesn't make it onto the `best' list. (high score or best time) JUBEL2.HSN played when you win a game and you do make it onto one of the `best' lists. BELL.HSN played when you try an illegal or impossible move UNDO.HSN played when you undo your last move NEWCARD.HSN played when you bring in a new card into the game by clicking on the stack in the lower left corner DROP.HSN played when you place a card on one of the four suit stacks MOVE.HSN played when you move a card or a stack of cards from one stack to another QUIT.HSN played when you want to quit Yukon You can use all of these files, some of them or none of them, Yukon doesn't care. That means if you don't want an Intro sound, then leave the appropriate file out of the YUKONDAT folder or rename it. Translation: "schade" means "pity" in German, "Jubel" means "applause". 4.3 The Resource ================= Yukon has a built-in German resource. On startup, Yukon looks for a file called YUKON.RSC in its YUKONDAT folder. If it's there, it will be used instead of the built-in resource. Yukon comes with an English resource (the file YUKON.RSC in the folder ENGLISH). Just copy it to your YUKONDAT folder before you start Yukon. The file can be easily modified using any common resource construction program. It should be obvious how to translate this file to another language. A The YTool Program ******************** What it's for With YTool you can make all of the image files (the cards for Yukon), into one file CARDS.IMG. So, with this you can make individual cards and then use this tool to turn them into one large image file, that Yukon (as of Rel. E) will accept as a card file. Usage At the start of Ytool, you will be asked to select a path ("Quellpfad" meaning "source path" in German). This is the path in which all of the cards in image format are located. The cards must have the following names. [Yes in german, I can't help that!] ù Herz (Hearts): herzas.img, herz2.img, herz3.img, herz4.img, herz5.img, herz6.img, herz7.img, herz8.img, herz9.img, herz10.img, herzbube.img, herzdame.img, herzking.img, ù Karo (Diamonds): karoas.img, karo2.img, karo3.img, karo4.img, karo5.img, karo6.img, karo7.img, karo8.img, karo9.img, karo10.img, karobube.img, karodame.img, karoking.img, ù Kreuz (Clubs): kreuzas.img, kreuz2.img, kreuz3.img, kreuz4.img, kreuz5.img, kreuz6.img, kreuz7.img, kreuz8.img, kreuz9.img, kreuz10.img, kreubube.img, kreudame.img, kreuking.img, ù Pik (Spade): pikas.img, pik2.img, pik3.img, pik4.img, pik5.img, pik6.img, pik7.img, pik8.img, pik9.img, pik10.img, pikbube.img, pikdame.img, pikking.img, ù Background of the play area - tabletop pattern: leer.img ù Back sides of the cards: rueck1.img, rueck2.img, rueck3.img, rueck4.img, rueck5.img, rueck6.img, rueck7.img The cards for a suit (Herz, Karo, Kreuz, Pik) can also be saved in a single file. If you do it this way, then the cards must be in a single row, and in order (Ace, 1, 2, ..., King). It also must be saved under the name of the suit in German (e.g. herz.img). The seven backsides will be cycled through during the play, so for the first game rueck1.img will be used. The IMG files can have between 1 and 8 planes (as many colors as you wish), YTool will then attempt to make an IMG file with the probability of producing at least this many planes. The IMG file that is produced is not specially packed and could be resaved with a program, which has the ability to save packed IMG files (e.g. Look'n See or GEM-View). Once YTool has read all of the card image files, it will ask you for a name to save it out as. (e.g. cards.img). Translation: "As" is the German word for "ace", "Bube" means "knight", "Dame" means "queen", "leer" means "empty" and "Rueckseite" means "back side". B CrazySounds ************** The samples Yukon can play are in a format used by the popular German program "CrazySounds". The format is fairly straightforward: It has a header of 90 bytes followed by the sound data. typedef struct { char id[20]; /* 'HSND1.1' */ long length; /* length of sound data */ int frequency; /* frequency, see below */ int stereo; /* 1=stereo, 0=mono */ char res[20]; /* not of interest here */ char info[41]; /* comment */ } HSN_HEAD; The `frequency' field holds the sample's frequency divided by 10. It should be any of the following values: 625, 1250, 2500, or 5000. It is recommended to use `1250' as this can be played on most computers (since the Falcon can't play 6250 Hz samples, old STs can't play higher frequencies, etc.). C Tips and Hints and other notes ********************************* ù Yukon remembers to the game variation, the last variation you play will be the one you start with the next time you play Yukon. ù If when you are playing a timed game, you need to take a break, then you can stop the clock by "iconify"ing the window. You can do this by either pressing the Alternate key and clicking on the window closer or by pressing the Control key and the Space bar. If you are sucessful with this the game window will now be minimized (it will appear as an icon with the title Yukon). When you are ready to resume playing you can either press Control - Space again or double click on the icon. This will bring the window back. ù Yukon looks for its YUKONDAT folder in the same path where YUKON.PRG itself is placed. If you don't like this you can define an environment variable YUKONDAT and set it to the folder which Yukon should use instead. D Thanks to ... **************** I would like to thank the following people: ù all my beta-testers, ù Marianne C. Herdt for the new cards, ù Dan Ackerman for translating Rel. E, ù ... and, of course, all those nice people who have donated money for Yukon. Dirk Haun, August 15, 1996 E Copying ********** You may copy Yukon freely as long as you stick to the following conditions: ù You are not allowed to sell Yukon. ù You may only charge costs for disks, postage, etc. at the normal rates. ù Yukon may not be included on cover disks (or other media connected with computer magazines). ù You should not alter the archive, if possible. You are not allowed to remove any files from the archive (if not for legal reasons). You are permitted to add files containing documentation or resources for other languages, new sets of cards or samples. You are not allowed to add bbs-banners or other forms of advertising. ù You are not allowed to change the program YUKON.PRG and the german documentation (YUKON.TXT and YUKON.HYP/.REF). You may ask the author for exceptions of these restrictions. If you as a user of Yukon find any violation against the above conditions, please inform me about it. Thank you. F Fairware *********** Yukon is fairware. That means you are asked for a donation but you can decide yourself how much you will send me. If you understand the concept of fairware, then please send your donation for Yukon to Dirk Haun Europastr. 8 D-64569 Nauheim Germany or you can transfer your donation directly to my bank Account number 8042947 Kreissparkasse Gross-Gerau Bank code number 50852553 If you have any questions or comments about Yukon, write me at my home address or send me e-mail at Dirk Haun @ WI2 or dirk_haun@wi2.maus.de on MausNet (please only mail < 16 KByte!!!).